package ru.zombator.taskman.core.query;

/**
 * Интерфейс сервера, обслуживающего клиентские запросы и ведущего лог (журнал)
 * работы.
 * 
 * @author nvamelichev
 * 
 */
public interface IResponderSvc {
	/**
	 * Освобождает все ресурсы, связанные с объектом.
	 */
	void dispose();

	/**
	 * Добавляет обработчика, вызываемого при добавлении записи в журнал
	 * 
	 * @param handler
	 *            - обработчик
	 */
	void addLogHandler(LogHandler handler);

	/**
	 * Удаляет обработчика
	 * 
	 * @param handler
	 *            - обработчик
	 */
	void removeLogHandler(LogHandler handler);
}
